<template>
  <div style="height: 100vh;background-image: linear-gradient(135deg, #1352F2, #3C82F8,#5AA4AE);overflow:hidden;">
    <el-container style="padding: 30px;">
      <el-header >
        <el-row :gutter="10">
          <el-col :span="3">
            <img src="/imgs/login/logo.png" style="height:50px;">
          </el-col>
          <el-col :span="1">
            <img src="/imgs/login/auto.png" style="height:50px;">
          </el-col>
          <el-col :span="1">
            <img src="/imgs/login/verticalLine.png" style="height:50px;">
          </el-col>
          <el-col :span="19">
            <span style="font-size: 30px;font-weight: bold;color: #fff">智慧车辆管理系统</span>
          </el-col>
        </el-row>
      </el-header>
      <el-main>
        <el-row gutter="40">
          <el-col :span="16">
            <img src="/imgs/login/bg.png" style="width: 100%;margin-top: 60px;">
          </el-col>
          <el-col :span="8">
            <el-card style="margin-top: 80px;
            background-image: url('/imgs/login/card_bg.png'); background-size: cover;">
              <h3 style="text-align: center;font-weight: bold">用户登录</h3>
              <el-form label-position="top">
                <el-form-item label="用户名：">
                  <el-input  placeholder="请输入用户名" v-model="user.username"></el-input>
                </el-form-item>
                <el-form-item label="密码：">
                  <el-input  placeholder="请输入密码" show-password v-model="user.password"></el-input>
                </el-form-item>
                <el-form-item>
                  <el-button type="primary" style="width: 100%;" @click="login">点击登录</el-button>
                </el-form-item>
              </el-form>
              <div style="font-size: 14px;font-weight: bold"><a >忘记密码？</a></div>
              <div style="color:#666;text-align: center;font-size: 14px;padding: 10px 0;">
                （体验账号：tom 密码：123456）
              </div>
            </el-card>
          </el-col>
        </el-row>

      </el-main>
    </el-container>
  </div>
</template>
<script setup>
import {ref} from "vue";
import axios from "axios";
import router from "@/router";
import {ElMessage} from "element-plus";
//1.定义对象用来保存用户输入的登录数据
const user = ref({username:'',password:''})
      //定义登录方法
const login = () =>{
  console.log(user.value)
  //2.给后端服务器发送登录请求
  axios.post('http://localhost:8080/v1/user/login',user.value)
      //3. .then()为回调函数，可以在此函数中处理接收到的后端响应
      //response是响应对象，response.data是响应的数据
      .then((response)=>{
        console.log(response.data);
        //4.前端需要对拿到的后端数据响应结果进行处理
        if(response.data.code==2000){
          ElMessage.success('登录成功！');
          /*登录成功后将后端返回的UserVO存入localStorage中*/
          //localStorage维护的是字符串类型的键值对（String Key：String Value）
          console.log(response.data.data);  // UserVO
          console.log(response.data);   //JsonResult
          console.log(JSON.stringify(response.data.data)); //字符串类型的UserVO

          localStorage.setItem('user',JSON.stringify(response.data.data));
          //登录成功后会直接挑战到首页
          router.push("/");
        }else {
          ElMessage.error(response.data.msg);
          //登录失败后，清空用户输入的数据
          user.value={username:'',password:''};
        }
      })
}


</script>


<style scoped>

</style>